﻿using BestHTTP;

namespace ZWFrameWork
{
    public class HttpBase
    {
        //单例
        private static HttpBase myInstance;

        public static HttpBase Instance
        {
            get
            {
                if (myInstance == null)
                    myInstance = new HttpBase();

                return myInstance;
            }
        }

        /// <summary>
        /// 获取短信验证码
        /// </summary>
        /// <param name="mobile">手机号</param>
        /// <param name="type">类型</param>
        /// <param name="callback"></param>
        public virtual void SendOTP(string mobile, string type, OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 充值链接接口
        /// </summary>
        /// <param name="coin">充值的金币数量</param>
        /// <param name="userid">用户id</param>
        /// <param name="orderType">是否首充（0：首充；1：非首充）</param>
        public virtual void Payment(string coin, string userid, string orderType,
            OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 获取充值记录
        /// </summary>
        /// <param name="userid">用户id</param>
        /// <param name="size">记录数量</param>
        public virtual void PaymentOrderList(string userid, string size, OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 获取签到数据
        /// </summary>
        /// <param name="userid">用户id</param>
        public virtual void GetLoginGilt(string userid, OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 发送签到领取
        /// </summary>
        /// <param name="userid"></param>
        /// <param name="callback"></param> 
        public virtual void SendQianDao(string userid, OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 发送HttpPost请求
        /// </summary>
        /// <param name="userid"></param>
        /// <param name="callback"></param> SendFristRecharges
        public virtual void SendHttpPost(string bod, string postUrl, OnRequestFinishedDelegate callback = null) { }

        /// <summary>
        /// 登陆前检测
        /// </summary>
        /// <param name="lang">语言</param>
        /// <param name="mccMnc">code</param>
        public virtual void CheckLoginBefore(string lang, string mccMnc, bool isOpenVpn, bool isOpenFlight,
            string timezone, string adJustId, string ip, string adgroup, OnRequestFinishedDelegate callback = null) { }

    }
}

